package io.gitee.thinkbungee.dao;

import java.util.List;
import java.util.Map;

/**
 * 查询数据库的相关信息
 *
 * @author chenyichang
 * @date 2022/3/8
 */
public interface GeneratorDao {

    /**
     * 查询数据库中创建的表的基本信息
     * 表名 tableName
     * 引擎 engine
     * 表描述 tableComment
     * 表创建时间 createTime
     *
     * @param map
     * @return
     */
    List<Map<String, Object>> queryList(Map<String, Object> map);

    /**
     * 通过表名查询信息
     * 表名 tableName
     * 引擎 engine
     * 表描述 tableComment
     * 表创建时间 createTime
     *
     * @param tableName 数据库名
     * @return
     */
    Map<String, String> queryTable(String tableName);

    /**
     * 通过表名查询表具体信息
     * 列名   columnName
     * 列类型  dataType
     * 列描述  columnComment
     * 列键   columnKey
     * 额外信息 extra
     *
     * @param tableName
     * @return
     */
    List<Map<String, String>> queryColumns(String tableName);
}
